// This file is part of MinIO Design System
// Copyright (c) 2022 MinIO, Inc.
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.

import React, { FC, SVGProps } from "react";
import LogoBase from "../LogoBase/LogoBase";
import { LogoBaseProps } from "../LogoBase/LogoBase.types";

const GlobalConsole: FC<SVGProps<any> & LogoBaseProps> = ({ inverse }) => {
  return (
    <LogoBase viewBox="0 0 219 51" inverse={inverse}>
      <g>
        <rect
          x="22.2"
          y="0.2"
          className={"minioSection"}
          width="3.8"
          height="11.2"
        />
        <path
          className={"minioSection"}
          d="M17.6,0.4L9.8,5.1c-0.1,0.1-0.2,0.1-0.4,0L1.6,0.4C1.5,0.3,1.3,0.2,1.1,0.2l0,0C0.5,0.2,0,0.7,0,1.3v10.2h3.8
		V6.6c0-0.3,0.3-0.5,0.6-0.3L8.8,9c0.4,0.3,1,0.3,1.4,0l4.6-2.7c0.3-0.1,0.6,0,0.6,0.3v4.9h3.8V1.3c0-0.6-0.5-1.1-1.1-1.1l0,0
		C17.9,0.2,17.7,0.3,17.6,0.4L17.6,0.4z"
        />
        <path
          className={"minioSection"}
          d="M45.2,0.2h-3.9v5.2c0,0.3-0.3,0.5-0.6,0.3L30.6,0.4c-0.2-0.1-0.3-0.1-0.5-0.1l0,0c-0.6,0-1.1,0.5-1.1,1.1v10.2
		h3.9V6.4c0-0.3,0.3-0.5,0.6-0.3l10.1,5.4c0.2,0.1,0.3,0.1,0.5,0.1l0,0c0.6,0,1.1-0.5,1.1-1.1L45.2,0.2L45.2,0.2L45.2,0.2z"
        />
        <path
          className={"minioSection"}
          d="M48.3,11.5V0.2h1.8v11.2L48.3,11.5L48.3,11.5z"
        />
        <path
          className={"minioSection"}
          d="M60.3,11.7c-4.7,0-8.1-2.3-8.1-5.9s3.4-5.9,8.1-5.9s8.1,2.3,8.1,5.9S65.2,11.7,60.3,11.7z M60.3,1.5
		c-3.5,0-6.2,1.5-6.2,4.4c0,2.8,2.7,4.4,6.2,4.4s6.3-1.5,6.3-4.4S63.9,1.5,60.3,1.5L60.3,1.5z"
        />
        <g>
          <path
            className={"minioApplicationName"}
            d="M15.6,19.8c2.6,0,5.1,0.6,7.3,1.7c2.2,1.1,3.9,2.7,5.1,4.6l-2.9,1.9c-1-1.5-2.3-2.7-4-3.6c-1.7-0.9-3.5-1.3-5.5-1.3
			c-1.7,0-3.3,0.3-4.7,0.9c-1.5,0.6-2.7,1.4-3.8,2.5c-1.1,1.1-1.9,2.3-2.5,3.9c-0.6,1.5-0.9,3.2-0.9,5s0.3,3.4,0.9,5
			c0.6,1.5,1.5,2.8,2.5,3.9c1.1,1.1,2.3,1.9,3.8,2.5c1.5,0.6,3.1,0.9,4.7,0.9c2,0,3.8-0.4,5.5-1.3c1.6-0.9,3-2,4-3.6l2.8,2.1
			c-1.3,1.9-3,3.4-5.1,4.5c-2.2,1.1-4.5,1.6-7.1,1.6c-2.2,0-4.3-0.4-6.2-1.2c-1.9-0.8-3.6-1.9-5-3.2c-1.4-1.4-2.5-3-3.3-4.9
			c-0.8-1.9-1.2-4-1.2-6.3s0.4-4.3,1.2-6.3c0.8-1.9,1.9-3.6,3.3-4.9c1.4-1.4,3-2.4,5-3.2C11.3,20.2,13.4,19.8,15.6,19.8z"
          />
          <path
            className={"minioApplicationName"}
            d="M48.2,19.8c3,0,5.6,0.7,8,2c2.4,1.3,4.2,3.2,5.6,5.5c1.3,2.4,2,5.1,2,8s-0.7,5.7-2,8c-1.3,2.4-3.2,4.2-5.6,5.6
			c-2.4,1.3-5.1,2-8,2c-2.2,0-4.3-0.4-6.2-1.2c-1.9-0.8-3.6-1.9-5-3.2c-1.4-1.4-2.5-3-3.3-4.9c-0.8-1.9-1.2-4-1.2-6.3
			s0.4-4.3,1.2-6.3c0.8-1.9,1.9-3.6,3.3-4.9c1.4-1.4,3-2.4,5-3.2C43.9,20.2,46,19.8,48.2,19.8z M48.2,23.2c-1.7,0-3.3,0.3-4.7,0.9
			c-1.5,0.6-2.7,1.4-3.8,2.5c-1.1,1.1-1.9,2.3-2.5,3.9c-0.6,1.5-0.9,3.2-0.9,5s0.3,3.4,0.9,5c0.6,1.5,1.5,2.8,2.5,3.9
			c1.1,1.1,2.3,1.9,3.8,2.5c1.5,0.6,3.1,0.9,4.7,0.9c2.3,0,4.3-0.5,6.1-1.5c1.8-1,3.3-2.5,4.3-4.3c1.1-1.9,1.6-4,1.6-6.4
			s-0.5-4.5-1.6-6.4s-2.5-3.3-4.3-4.3C52.5,23.7,50.5,23.2,48.2,23.2z"
          />
          <path
            className={"minioApplicationName"}
            d="M96.2,20.3v30.3h-3.1L74.3,26.2v24.3h-3.5V20.3H74l18.8,24.3V20.3H96.2z"
          />
          <path
            className={"minioApplicationName"}
            d="M126.5,23.2l-1.8,2.8c-2.8-1.9-5.8-2.8-9.1-2.8c-2.3,0-4.2,0.5-5.7,1.5c-1.4,1-2.2,2.3-2.2,4c0,1.4,0.6,2.5,1.7,3.3
			c1.1,0.8,2.9,1.3,5.3,1.6l2.9,0.3c1.3,0.2,2.5,0.4,3.6,0.8c1.1,0.4,2.1,0.8,3,1.4c0.9,0.6,1.6,1.4,2.1,2.4c0.5,1,0.8,2.1,0.8,3.4
			c0,1.9-0.6,3.6-1.7,5c-1.1,1.4-2.5,2.4-4.3,3.1c-1.8,0.7-3.8,1-6,1c-2.2,0-4.3-0.4-6.5-1.1s-4-1.7-5.4-2.8l1.9-2.8
			c1.1,0.9,2.6,1.7,4.4,2.4c1.8,0.7,3.7,1,5.6,1c2.5,0,4.5-0.5,6-1.4c1.6-1,2.4-2.3,2.4-4.1c0-1.4-0.6-2.6-1.8-3.4
			c-1.2-0.8-3.1-1.3-5.5-1.6l-3.1-0.3c-2.7-0.3-4.9-1.1-6.5-2.4c-1.6-1.3-2.4-3.2-2.4-5.6c0-1.9,0.5-3.5,1.6-4.9
			c1-1.4,2.4-2.4,4.1-3.1c1.7-0.7,3.6-1,5.8-1C119.8,19.9,123.4,21,126.5,23.2z"
          />
          <path
            className={"minioApplicationName"}
            d="M147.9,19.8c3,0,5.6,0.7,8,2c2.4,1.3,4.2,3.2,5.6,5.5c1.3,2.4,2,5.1,2,8s-0.7,5.7-2,8c-1.3,2.4-3.2,4.2-5.6,5.6
			c-2.4,1.3-5.1,2-8,2c-2.2,0-4.3-0.4-6.2-1.2c-1.9-0.8-3.6-1.9-5-3.2c-1.4-1.4-2.5-3-3.3-4.9c-0.8-1.9-1.2-4-1.2-6.3
			s0.4-4.3,1.2-6.3s1.9-3.6,3.3-4.9c1.4-1.4,3-2.4,5-3.2C143.6,20.2,145.7,19.8,147.9,19.8z M147.9,23.2c-1.7,0-3.3,0.3-4.7,0.9
			c-1.5,0.6-2.7,1.4-3.8,2.5c-1.1,1.1-1.9,2.3-2.5,3.9c-0.6,1.5-0.9,3.2-0.9,5s0.3,3.4,0.9,5c0.6,1.5,1.5,2.8,2.5,3.9
			c1.1,1.1,2.3,1.9,3.8,2.5c1.5,0.6,3.1,0.9,4.7,0.9c2.3,0,4.3-0.5,6.1-1.5c1.8-1,3.3-2.5,4.3-4.3c1.1-1.9,1.6-4,1.6-6.4
			s-0.5-4.5-1.6-6.4s-2.5-3.3-4.3-4.3C152.2,23.7,150.2,23.2,147.9,23.2z"
          />
          <path
            className={"minioApplicationName"}
            d="M191.6,47.3v3.3h-21V20.3h3.5v27H191.6z"
          />
          <path
            className={"minioApplicationName"}
            d="M218.2,47.3v3.3h-21.3V20.3H218v3.3h-17.6v10.1h17.1v3.2h-17.1v10.4H218.2z"
          />
        </g>
      </g>
    </LogoBase>
  );
};

export default GlobalConsole;
